home *** CD-ROM | disk | FTP | other *** search
/ Aminet 30 / Aminet 30 (1999)(Schatztruhe)[!][Apr 1999].iso / Aminet / dev / mui / bcc_src.lha / Parser / GetSGI.cpp < prev    next >
C/C++ Source or Header  |  1998-03-15  |  556b  |  38 lines

  1. #include "ParseFile.h"
  2. #include "VarDef.h"
  3.  
  4. short ParseFile::GetSGI( unsigned short *sw )
  5. {
  6.     short i;
  7.     
  8.     if( chcmp( ':' ) && PrevTok[ 0 ] ) {
  9.  
  10.         GetToken();
  11.         if( !TokLen ) return -1;
  12.  
  13.         if( TokType != ALN || TokLen > 3 ) {
  14.             Error( 9 );
  15.             return -1;
  16.         }
  17.         
  18.         for( i = 0; i < TokLen; i++ ) {
  19.             switch( Tok[i] ) {
  20.                 case 'S': *sw |= SW_SET; break;
  21.                 case 'G': *sw |= SW_GET; break;
  22.                 case 'I': *sw |= SW_INIT; break;
  23.                 default:
  24.                     Error( 9 );
  25.                     return -1;
  26.             }
  27.         }    
  28.  
  29.         GetToken();
  30.         if( !TokLen ) return -1;
  31.         
  32.         return 1;
  33.     }
  34.     return 0;
  35.  
  36. }
  37.  
  38.